package com.yzh.teacher.link;

import java.util.Deque;
import java.util.LinkedList;
import java.util.Stack;

/**
 *
 * public  class Stack<E> extends Vector<E>
 *
 *     Vector已经被ArrayList替代了，Stack也不建议使用了
 *
 * Deque接口 双端队列
 *   ArrayDeque  ：底层使用数组
 *   LinkedList ： 底层使用双向链表
 *
 * 队列接口Queue
 *     public interface Deque<E> extends Queue<E>
 * *   ArrayDeque  ：底层使用数组
 *   LinkedList ： 底层使用双向链表
 *
 *   deque.push("盘子1");//推进去  入栈
 *   String elem = deque.peek();//获取栈顶元素
 *   String elem2 = deque.pop();//出栈  弹出去
 *
 */
public class TestStack {
    public static void main(String[] args) {
        Stack stack = new Stack();

        Deque<String> deque = new LinkedList();

        deque.push("盘子1");//推进去  入栈
        deque.push("盘子2");
        deque.push("盘子3");

        String elem = deque.peek();//获取栈顶元素
        System.out.println(elem);
        System.out.println(deque.size());
        while(!deque.isEmpty()){
            String elem2 = deque.pop();//出栈  弹出去
            System.out.println(elem2);
        }




    }
}
